W11_防止 XSS


Posted by Christy on 2021-08-30

hw1 實作_3. XSS

  • 在別人的網站上執行 js 就叫做 XSS

  • 修補 XSS 漏洞

    • 推薦在顯示的時候做 escape,為什麼不在一開始使用者輸入時做呢?假時以後手機的 IOS 或者 Android 都要使用一樣的資料庫,那保持使用者輸入資料的原始資料會比較好

    • htmlspecialchars()

    • 所以我們要在任何使用者可以輸入的地方加上這個函式


如何防止 XSS 攻擊?

在這個範例中,我們在 utils.php 裡面建立一個函式叫做 escape,php 內建函式 htmlspecialchars()

function escape ($str) {
  return htmlspecialchars($str, ENT_QUOTES);
}
  • 在顯示的時候做跳脫,因為以後有可能其他手機 app 也會用到,應該保持使用者輸入的內容

  • 因此通常會在 index.php, login.php 等做跳脫,而不是在 handle_login.php 裡面做

  • 只要使用者可以輸入的地方,都必須要做這件事










Related Posts

如何打包 CRA 專案並建立不透過第三方服務即可供別人使用的專案

如何打包 CRA 專案並建立不透過第三方服務即可供別人使用的專案

987. Vertical Order Traversal of a Binary Tree

987. Vertical Order Traversal of a Binary Tree

JavaScript If /else -如果我不會寫程式,你還會愛我嗎?

JavaScript If /else -如果我不會寫程式,你還會愛我嗎?


Comments